from math import sqrt

class ParamsError(Exception):
    def __str__(self):
        print("错误的数据类型!!")

def add(a, b):
    return a+b

def sub(a, b):
    return a-b

def mul(a, b):
    return a*b

def div(a, b):
    return a/b

def exdiv(a, b):
    return a//b

def rem(a, b):
    return a%b

def pow(a, b):
    return a**b

if __name__ == "__main__":
    print("请问要做什么运算：")
    print("1：加法 2：减法 3：乘法 4：除法 5：整除 6：取余 7：乘方 8：开二次方 q：退出")
    while 1:
        print("输入运算方式：")
        i = input()
        if i =="q":
            break
        elif i=='1'or i=='2'or i=='3'or i=='4'or i=='5'or i=='6'or i=='7':
            print("第一个数：")
            try:
                a = float(input())
            except:
                raise ParamsError()
            print("第二个数：")
            try:
                a = float(input())
            except:
                raise ParamsError()
            if i=='1':
                print(str(a)+"+"+str(b)+"="+str(add(a, b)))
            if i=='2':
                print(str(a)+"-"+str(b)+"="+str(sub(a, b)))
            if i=='3':
                print(str(a)+"*"+str(b)+"="+str(mul(a, b)))
            if i=='4':
                print(str(a)+"/"+str(b)+"="+str(div(a, b)))
            if i=='5':
                print(str(a)+"//"+str(b)+"="+str(exdiv(a, b)))
            if i=='6':
                print(str(a)+"%"+str(b)+"="+str(rem(a, b)))
            if i=='7':
                print(str(a)+"**"+str(b)+"="+str(pow(a, b)))
        elif i=='8':
            print("输入数字：")
            a = int(input())
            print(sqrt(a))
        else:
            print("请输入正确的指令！")
